home *** CD-ROM | disk | FTP | other *** search
/ The Arsenal Files 6 / The Arsenal Files 6 (Arsenal Computer).ISO / prg_basi / n_b-v200.zip / TEXTMODE.BAS < prev   
BASIC Source File  |  1996-03-11  |  6KB  |  135 lines

  1. '───────────────────────────────────────────────────────────────────────────
  2. '─────── Compiler Statements ───────────────────────────────────────────────
  3. '───────────────────────────────────────────────────────────────────────────
  4. $COMPILE  MEMORY           ' { EXE "?.EXE" | CHAIN "?.PBC" | UNIT "?.PBU" }
  5. $CPU       80386           ' { 8086 | 80286 | 80386}
  6. $COM           0           ' { 0 -> 32767 }
  7. $SOUND       128           ' { 1 -> 4096 }
  8. $STACK     32766           ' { 1536 -> 32766 }
  9. $STRING       32           ' { 1 | 2 | 4 | 8 | 16 | 32 }
  10. $OPTIMIZE SIZE             ' { SIZE | SPEED }
  11. $DIM      ARRAY            ' { ALL | ARRAY | NONE }
  12. $DYNAMIC                   ' { $STATIC | $DYNAMIC | $HUGE }
  13. $ERROR    BOUNDS     OFF   ' { ON | + | OFF | - }
  14. $ERROR    NUMERIC    OFF   ' { ON | + | OFF | - }
  15. $ERROR    OVERFLOW   OFF   ' { ON | + | OFF | - }
  16. $ERROR    PARAM      OFF   ' { ON | + | OFF | - }
  17. $ERROR    STACK      OFF   ' { ON | + | OFF | - }
  18. $EVENT               OFF   ' { ON | + | OFF | - }
  19. $DEBUG    MAP        OFF   ' { ON | + | OFF | - }
  20. $DEBUG    PBDEBUG    OFF   ' { ON | + | OFF | - }
  21. $DEBUG    PATH       OFF   ' { ON | + | OFF | - }
  22. $DEBUG    UNIT       OFF   ' { ON | + | OFF | - }
  23. $OPTION   CNTLBREAK  OFF   ' { ON | + | OFF | - }
  24. $OPTION   GOSUB      OFF   ' { ON | + | OFF | - }
  25. $LIB      COM        OFF   ' { ON | + | OFF | - }
  26. $LIB      LPT        OFF   ' { ON | + | OFF | - }
  27. $LIB      GRAPH      OFF   ' { ON | + | OFF | - }
  28. $LIB      CGA        OFF   ' { ON | + | OFF | - }
  29. $LIB      EGA        OFF   ' { ON | + | OFF | - }
  30. $LIB      VGA        OFF   ' { ON | + | OFF | - }
  31. $LIB      HERC       OFF   ' { ON | + | OFF | - }
  32. $LIB      FULLFLOAT  OFF   ' { ON | + | OFF | - }
  33. $LIB      IPRINT     OFF   ' { ON | + | OFF | - }
  34. $LIB      ALL        OFF   ' { ON | + | OFF | - }
  35. $FLOAT    EMULATE          ' { EMULATE | NPX | PROCEDURE }
  36.  
  37. %UseMouse =  0             ' change this to -1 for mouse support
  38.  
  39. '───────────────────────────────────────────────────────────────────────────
  40. '─────── Include Statements ────────────────────────────────────────────────
  41. '───────────────────────────────────────────────────────────────────────────
  42. $INCLUDE "PUBLICS .INC"    ' all public statements               <─┐
  43. $INCLUDE "DAS-NB01.INC"    ' nutz 'n boltz #1                      │ matched
  44. $INCLUDE "DAS-NB02.INC"    ' nutz 'n boltz #2                      │ pair
  45. $INCLUDE "DAS-NB03.INC"    ' math package, sound & tunes         <─┘
  46. '──────────────────────────'
  47. $if %UseMouse              '
  48.   $INCLUDE "DAS-NBT0.INC"  ' general purpose printing WITH MOUSE <─┐ either
  49. $else                      '                                        │
  50.   $INCLUDE "DAS-NBT1.INC"  ' general purpose printing NO MOUSE   <─┘ or
  51. $endif                     '
  52. $INCLUDE "DAS-NBT2.INC"    ' Tinput and family
  53. $INCLUDE "DAS-NBT3.INC"    ' menu routines
  54. $INCLUDE "DAS-NBT4.INC"    ' screen clearing & copiing
  55. '───────────────────────────────────────────────────────────────────────────
  56. '─────── Set-up Functions ──────────────────────────────────────────────────
  57. '───────────────────────────────────────────────────────────────────────────
  58. PUBLIC pProgPath$          ' program's home path
  59. PUBLIC pCollate$           ' CountryCode's collate string for ARRAY SORT
  60.  
  61. IF pbvCPU < 3 THEN
  62.   CLS
  63.   PRINT "CAN'T RUN THIS PROGRAM ON LESS THAN A 386"
  64.   END
  65. END IF
  66.  
  67. pProgPath$ = fProgPath$
  68.  
  69. DIM tCC AS CountryCodeType
  70. LSET tCC = fGetCountry$( 0 )
  71. IF tCC.CountryCode > 0 THEN
  72.   SetDateFormat tCC.DateFormat, tCC.DateSep
  73.   SetTimeFormat tCC.TimeFormat, tCC.TimeSep
  74.   CHR2MID pbvUSINGchrs, 3, tCC.ThousandSep
  75.   CHR2MID pbvUSINGchrs, 4, tCC.DecimalSep
  76.   SetMoneyMask tCC.MoneySymbol, tCC.MoneyFormat, tCC.MoneyDecs
  77.   pCollate$ = fGetCollate$
  78. END IF
  79.  
  80. HelpLineSetup 25, 14, 67, 47
  81.  
  82. SetINSERTmsg  " INSERT ON  ", " INSERT OFF ", 25, 1
  83.  
  84. DIM tYesNo AS SHARED YesNoTYPE
  85.   tYesNo.YesKey   = "Y"                 ' fUCASEdos$ is used here
  86.   tYesNo.YesText  = "<Y>es"             ' <YES> answer (17 chars max)
  87.   tYesNo.YesAttr  =  47                 ' color attribute for <YES>
  88.   tYesNo.NoKey    = "N"                 ' fUCASEdos$ is used here too
  89.   tYesNo.NoText   = "<N>o"              ' <NO> answer (17 chars max)
  90.   tYesNo.NoAttr   =  79                 ' color attribute for <NO>
  91.   tYesNo.OffAttr  = 120                 ' "OFF" attribute
  92.   tYesNo.ShdoFore =   0                 ' shadow foreground color if < 16
  93.  
  94. $if %UseMouse
  95.   Buttons? = fMouseSETUP?( 2 )              ' left & right buttons only
  96.   EventSetup 10, 200                        ' we'll use events
  97.  
  98.   FUNCTION fGetKey% () LOCAL PUBLIC
  99.  
  100.     DO
  101.       IF INSTAT THEN
  102.         FUNCTION = CVI( INKEY$ + CHR$(0) )
  103.         EXIT FUNCTION
  104.       END IF
  105.     LOOP UNTIL fMouseBUTTON% <> 0
  106.  
  107.   END FUNCTION
  108. $else
  109.   FUNCTION fGetKey% () LOCAL PUBLIC
  110.  
  111.     WHILE NOT INSTAT : WEND
  112.     FUNCTION = CVI( INKEY$ + CHR$(0) )
  113.  
  114.   END FUNCTION
  115. $endif
  116.  
  117. '───────────────────────────────────────────────────────────────────────────
  118. '─────── Program Code ──────────────────────────────────────────────────────
  119. '───────────────────────────────────────────────────────────────────────────
  120.  
  121.  
  122. '───────────────────────────────────────────────────────────────────────────
  123. '─────── End Program ───────────────────────────────────────────────────────
  124. '───────────────────────────────────────────────────────────────────────────
  125.  
  126. ByeBye:
  127.   SCREEN 0,,0,0         ' back to text mode
  128.   WIDTH  80,25          ' 80x25 screen
  129.   COLOR  7,0,0          ' normal DOS colors
  130.   LOCATE ,,1            ' cursor on
  131.   CLS                   '
  132.   END                   '
  133.  
  134.  
  135.